package com.dkd.sbtz.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.dkd.common.annotation.Excel;
import com.dkd.common.core.domain.BaseEntity;
import org.apache.ibatis.type.Alias;

/**
 * 设备评估对象 asset_assessment
 * 
 * @author xzj
 * @date 2025-10-23
 */
@Alias("assetAssessment")
@Data
public class AssetAssessment extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 自增主键 */
    private Long id;

    /** 设备ID */
    @Excel(name = "设备ID")
    private Long assetId;

    private Long parentAssetId;

    /** 备件ID */
    @Excel(name = "备件ID")
    private Long spareId;

    /** 初始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "初始日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date initialDate;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String typicalFailure;

    /** 分数 */
    @Excel(name = "分数")
    private BigDecimal output;

    /** 等级 A 1月 B 2月 */
    @Excel(name = "等级 A 1月 B 2月")
    private BigDecimal utilization;

    /** STANDBY 备用评分 */
    @Excel(name = "STANDBY 备用评分")
    private BigDecimal standby;

    /** QUALITY 质量评分 */
    @Excel(name = "QUALITY 质量评分")
    private BigDecimal quality;

    /** SAFETY/HEALTH 安全健康评分 */
    @Excel(name = "SAFETY/HEALTH 安全健康评分")
    private BigDecimal safetyHealth;

    /** ENVIRONMENT 环境评分 */
    @Excel(name = "ENVIRONMENT 环境评分")
    private BigDecimal environment;

    @Excel(name = "IMPACT 影响评分 总分")
    private BigDecimal impact;

    /** CRITICAL LEVEL 关键等级  总评级 */
    @Excel(name = "CRITICAL LEVEL 关键等级  总评级")
    private String criticalLevel;

    /** MTBF 平均故障间隔时间（小时） */
    @Excel(name = "MTBF 平均故障间隔时间", readConverterExp = "小=时")
    private BigDecimal mtbf;

    /** MTTR 平均修复时间（小时） */
    @Excel(name = "MTTR 平均修复时间", readConverterExp = "小=时")
    private BigDecimal mttr;

    /** COST 成本 */
    @Excel(name = "COST 成本")
    private BigDecimal cost;

    /** SEVERITY 严重性评分 */
    @Excel(name = "SEVERITY 严重性评分")
    private BigDecimal severity;

    /** SEVERITY LEVEL 严重性等级 */
    @Excel(name = "SEVERITY LEVEL 严重性等级")
    private String severityLevel;

    /** TOTAL FACTOR SCORE 总因子评分 */
    @Excel(name = "TOTAL FACTOR SCORE 总因子评分")
    private BigDecimal totalFactorScore;

    /** EQUIPMENT RISK LEVEL 设备风险等级 */
    @Excel(name = "EQUIPMENT RISK LEVEL 设备风险等级")
    private String equipmentriskLevel;

    /** 是否处理 0 未处理 1已处理 */
    @Excel(name = "是否处理 0 未处理 1已处理")
    private Integer isDeal;

    private Integer isSpecial;

    /** 0正常 1删除 */
    @Excel(name = "0正常 1删除")
    private Integer isDelete;

    private Integer isEnterPart;

    /** 维护工种 1 软件工程师 2 硬件工程师 */
    @Excel(name = "维护工种 1 软件工程师 2 硬件工程师")
    private String maintainType;

    /** 备件数量 */
    @Excel(name = "备件数量")
    private Long spareCount;

    /** 计划内容 */
    @Excel(name = "计划内容")
    private String planContent;

}
